// 解题思路：
// 题目要求第一次必须减 1，后续可以减这个数或者是这个数的 2 倍，要求必须正好减到 0，求最少减的次数
// 假设要减的数是 x, 这就是考验我们是否要减 2x
// 贪心的思路：能减 2x 就减 2x, 2x 约大，就减的越多，次数越少
// 如何判断是否要减 2x，就是看 n % 2x 是否等于 0
// 如果等于 0，就表示减 2x 可以减到 0，就减 2x

import java.util.*;

public class SubtractIntegers {
    public static void main(String[] args){
        Scanner in = new Scanner(System.in);
        int t = in.nextInt();

        while(t-- > 0){
            int n = in.nextInt();
            int count = 0;
            int a = 1;

            while(n > 0){
                n -= a;
                count++;
                if(n % (2 * a) == 0){
                    a *= 2;
                }
            }
            System.out.println(count);
        }
    }
}
